// 1. 引入模块
const express = require('express');
const home = express.Router();

// 2.1 接口实现
// 2.1.1 GET 请求  / 登录的页面
home.get('/login', (req, res) => {
    // 渲染指定的页面
    res.render('login', { a: '欢迎登录' })
})

// 2.1.2 POST 请求  登录
home.post('/login', (req, res) => {
    // post 请求的请求体参数，在 req.body 中
    // uname=amdin&password=abc123
    // { uname: "admin", password: "abc123" }
    const { uname, password } = req.body;

    if (uname !== '老6') {
        res.send('用户名输入错误')
    } else if (password !== 'abc123') {
        res.send('密码错误')
    } else {
        // 登录成功后，使用res设置cookie，返回给客户端进行存储
        // maxAge: cookie 的有效时长，单位是毫秒
        // 一天的时长 1000 * 60 * 60 * 24
        // res.cookie('isLogin', 'true', { maxAge: 10 * 1000 });
        // res.cookie('chen', 'chenweiting', { maxAge: 10 * 1000 });

        // 给 请求头 设置session
        req.session.isLogin = true;
        req.session.users = req.body;

        // res.send('登录成功')
        res.redirect('/');
    }
})

// 2.1.3 GET 请求   跳转到首页
home.get('/', (req, res) => {
    // 从req中获取cookies
    // console.log(req.cookies);
    // const { isLogin, chen } = req.cookies;
    // if (isLogin === 'true' || chen === 'chenweiting') {
    //     // 已经登陆过的
    //     res.render('index', {});
    // } else {
    //     // 跳转到登录页
    //     // redirect 重定向到登录页面
    //     res.redirect('/login');
    // }

    // 数据是存在服务器端的，这次请求会自动携带cookie的密钥
    // 在session中间件解析完毕之后，返回给req.session
    // console.log(req.session);
    const { isLogin, users } = req.session;
    if (isLogin) {
        // 已经登陆过的
        res.render('index', users);
    } else {
        // 跳转到登录页
        res.redirect('/login');
    }
})


// 2.2 处理其他的路径
home.get('/*', (req, res) => {
    res.send('您访问的页面不存在！');
})

// 3. 导出子路由
module.exports = home;